package util;

import java.util.HashSet;
import java.util.Set;

public class CityCache {

    private static Set<String> cities = null;

    // 获取城市列表的方法，支持懒加载
    public static Set<String> getCitiesOfHotels() {
        if (cities == null) {
            loadCitiesFromDatabase("HOTEL_T");
        }
        return cities;
    }

    public static Set<String> getCitiesOfFlights() {
        if (cities == null) {
            loadCitiesFromDatabase("FLIGHT_T");
        }
        return cities;
    }

    // 模拟从数据库加载城市的方法
    private static void loadCitiesFromDatabase(String type) {
        // 实际应用中应替换为数据库查询逻辑
        cities = new HashSet<>();
        cities.add("Hangzhou");
        cities.add("Shanghai");
        cities.add("Beijing");
        cities.add("Guangzhou");
        cities.add("Chengdu");
    }

    // 提供刷新缓存的方法，例如在数据变化时调用
    public static void refreshCache() {
        cities = null; // 清空缓存
    }
}
